package com.chuangshixinchen.enterprise.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.chuangshixinchen.enterprise.common.Result;
import com.chuangshixinchen.enterprise.entity.Tb_declaration_flow;
import com.baomidou.mybatisplus.extension.service.IService;
import com.chuangshixinchen.enterprise.entity.excel.StaffInData;
import com.chuangshixinchen.enterprise.entity.excel.StaffOutData;
import com.chuangshixinchen.enterprise.vo.req.DeclarationFlowReqPageVo;
import com.chuangshixinchen.enterprise.vo.res.DeclarationFlowResVo;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author ${author}
 * @since 2021-08-16
 */
public interface ITb_declaration_flowService extends IService<Tb_declaration_flow> {
    /**
     * 分页查询
     *
     * @param vo 参数
     * @return
     */
    Result<Page<DeclarationFlowResVo>> listPage(DeclarationFlowReqPageVo vo);


    /**
     * 查询详情
     *
     * @param id
     * @return
     */
    Result<Tb_declaration_flow> getInfo(Long id);

    Result saveInfo(MultipartFile deFile,MultipartFile prFile, ITb_declaration_flowService declarationFlowService, Tb_declaration_flow declarationFlow);

    void saveStaffIn4Excel(Tb_declaration_flow declarationFlow, List<StaffInData> staffInDataList);

    void saveStaffOut4Excel(Tb_declaration_flow declarationFlow, List<StaffOutData> staffOutDataExcelList);

    Result removeInfo(String ids);
}
